package br.totvs.campinas.pdnet.servicos.server.dao;


import java.util.List;

import javax.persistence.EntityManager;

import br.totvs.campinas.pdnet.servicos.server.domain.AbstractEntity;

public interface IDao<T extends AbstractEntity> {
	
	T find(Class<T> c, Object id);
	
	void remove(Class<T> c, T entidade);
	
	
	void persist(T entidade);
	
	T merge(T entidade);
	
	void flush();
	
	EntityManager getEntityManager();
	
	List<T> findEntries(Class<T> c, int firsResult, int maxResult);
	
	
	
	

}
